package io.FileStream;


import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

public class TryCatch {
    /*
    一般不用此方法，后面会有一个全局异常处理
    对于I/O流中不抛出异常而是捕获异常的try...catch方法
    正常情况下执行完try里面的代码后再去执行finally里的代码。不正常时会执行catch里的代码在执行finally里的代码
     */
    public static void main(String[] args) throws IOException {
        FileInputStream fis=null;
        FileOutputStream fos=null;

        try{
//            在创建对象时是局部变量，finall里的代码无法调用，可以将对象写到外面，在try里面赋值
             fos=new FileOutputStream("a.txt");
             fis=new FileInputStream("");
            fos.write(97);//a

        }catch (IOException e){
            e.printStackTrace();
        }finally {
//            特点：finally里面的代码一定被执行，除非虚拟机终止(System.exit(0))
            fos.close();
            fis.close();
        }
    }
}
